home *** CD-ROM | disk | FTP | other *** search
/ OpenGL Superbible (2nd Edition) / OpenGL SuperBible e2.iso / tools / FLTK-1.0.6 / src / fl_shadow_box.cxx < prev    next >
Encoding:
C/C++ Source or Header  |  1999-01-07  |  1.7 KB  |  55 lines

  1. //
  2. // "$Id: fl_shadow_box.cxx,v 1.4 1999/01/07 19:17:43 mike Exp $"
  3. //
  4. // Shadow box drawing routines for the Fast Light Tool Kit (FLTK).
  5. //
  6. // Copyright 1998-1999 by Bill Spitzak and others.
  7. //
  8. // This library is free software; you can redistribute it and/or
  9. // modify it under the terms of the GNU Library General Public
  10. // License as published by the Free Software Foundation; either
  11. // version 2 of the License, or (at your option) any later version.
  12. //
  13. // This library is distributed in the hope that it will be useful,
  14. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  16. // Library General Public License for more details.
  17. //
  18. // You should have received a copy of the GNU Library General Public
  19. // License along with this library; if not, write to the Free Software
  20. // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
  21. // USA.
  22. //
  23. // Please report all bugs and problems to "fltk-bugs@easysw.com".
  24. //
  25.  
  26. #include <FL/Fl.H>
  27. #include <FL/fl_draw.H>
  28.  
  29. #define BW 3
  30.  
  31. static void fl_shadow_frame(int x, int y, int w, int h, Fl_Color c) {
  32.   fl_color(FL_DARK3);
  33.   fl_rectf(x+BW, y+h,  w, BW);
  34.   fl_rectf(x+w,  y+BW, BW,  h);
  35.   fl_color(c);
  36.   fl_rect(x,y,w,h);
  37. }
  38.  
  39. static void fl_shadow_box(int x, int y, int w, int h, Fl_Color c) {
  40.   fl_color(c);
  41.   fl_rectf(x+1,y+1,w-2,h-2);
  42.   fl_shadow_frame(x,y,w,h,FL_GRAY0);
  43. }
  44.  
  45. extern void fl_internal_boxtype(Fl_Boxtype, Fl_Box_Draw_F*);
  46. Fl_Boxtype define_FL_SHADOW_BOX() {
  47.   fl_internal_boxtype(_FL_SHADOW_FRAME, fl_shadow_frame);
  48.   fl_internal_boxtype(_FL_SHADOW_BOX, fl_shadow_box);
  49.   return _FL_SHADOW_BOX;
  50. }
  51.  
  52. //
  53. // End of "$Id: fl_shadow_box.cxx,v 1.4 1999/01/07 19:17:43 mike Exp $".
  54. //
  55.